﻿using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
using System.IO;
using System.Data;
using System.Web.UI.Design;

namespace jQuery.WebControls.UI
{
    /// <summary>
    /// Dibuja un pop-up sencillo en modo diseño. No es sensible al doble clic por lo que para crear el evento click
    /// hay que ir a la ventana de propiedades y hacer doble click sobre el evento.
    /// </summary>
    class PopUpDesigner : ControlDesigner
    {

        protected PopUp pop;

        /// <summary>
        /// Genera la salida HTML simple del pop-up para verlo cuando se esta diseñando la pagina web en modo diseño
        /// </summary>
        /// <returns>Cadena HTML</returns>
        public override string GetDesignTimeHtml()
        {            
            
            string container, title, msg, buttons;            
            pop = (PopUp)Component;
                        
            title = String.Format("<div style='font-weight:bold; background-color:#333; color: #fff'>{0}</div>", pop.MessageTitle);
            msg = String.Format("<div style='margin: 10px;'>{0}</div><div><input type='text' style='display:{1}' /></div>", pop.Text,
                (pop.MessageType == MessageType.Prompt ? "inline" : "none"));
            buttons = String.Format("<div><input type='button' value='{0}' />&nbsp;<input type='button' value='{1}' style='display:{2}' /></div>", 
                pop.AcceptText, pop.CancelText, (pop.MessageType == MessageType.Confirm ? "inline" : "none"));            
            container = String.Format("<div style='width:{0};height:{1};'>{2}{3}{4}</div>", pop.Width.ToString(), pop.Height.ToString(),
                title, msg, buttons);
            return container;
        }
    }
}
